package juego;
import juego.tipos.*;

//Clase que devuelve las constantes usadas en el juego.

public abstract class Constantes{

	
	public static Velocidad velocidadFondo(){
		//La velocidad del fondo es  abajo, con modulo 1, y sin valor de rotacion
		return new Velocidad(Constantes.abajo(),1.0);
	}

	/////////////////////////////////////////////////////////////////////////////////
	//DIRECCIONES!
	/////////////////////////////////////////////////////////////////////////////////
	public static Vector abajo(){
		//Retorna un vector que indica la direccion hacia "abajo"
		//suponiendo que	x crece a izquierda.(ancho)
		//			y crece hacia "arriba" (altura)
		
		return new Vector(0,-1);
	}

	public static Vector arriba(){
		//Retorna un vector que indica la direccion hacia "arriba"
		//suponiendo que	x crece a izquierda.(ancho)
		//			y crece hacia "arriba" (altura)
		
		return new Vector(0,1);
	}	

	/////////////////////////////////////////////////////////////////////////////////
	//MOTORES!
	/////////////////////////////////////////////////////////////////////////////////
	
	public static double MotorRastreador_AnguloDeGiroEnRadianes(){
		return 0.5235987756;	//30º 
					//Es el angulo maximo que puede cambiar la direccion del la
					//Velocidad del MotorRastreador cuando corrige su rumbo.
	}

	public static double MotorRastreador_DistanciaDeVision(){
		return 30;	//Es la distancia maxima que debe estar un objeto
				//para que el motorRastreador corrja el rumbo para
				//dirigirse a ese objeto.
	}

	////////////////////////////////////////////////////////////////////////////////
	//ARMAS!
	////////////////////////////////////////////////////////////////////////////////

	//*COHETE*//
	public static int Arma_Cohete_Energia(){
		return 50;
	}

	public static int Arma_Cohete_VelocidadDisparo(){
		return 30;
	}

	//*LASER*//
	public static int Arma_Laser_Energia(){
		return 20;
	}

	public static int Arma_Laser_VelocidadDisparo(){
		return 20;
	}
	
	//*RASTREADOR*//
	public static int Arma_Rastreador_Energia(){
		return 30;
	}

	public static int Arma_Rastreador_VelocidadDisparo(){
		return 30;
	}

	//*TORPEDO*//
	public static int Arma_Torpedo_Energia(){
		return 40;
	}

	public static int Arma_Torpedo_VelocidadDisparo(){
		return 30;
	}

	/////////////////////////////////////////////////////////////////////////////////
	//CIELO!
	/////////////////////////////////////////////////////////////////////////////////
	
	public static double Cielo_Ancho(){
	//Valor maximo de las posiciones en X
		return 100;
	}
	
	public static double Cielo_Alto(){
	//Valor maximo de las posiciones en Y
		return 100;
	}
}
	
